<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<HTML
><HEAD
><TITLE
>Release 8.3.4</TITLE
><META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REV="MADE"
HREF="mailto:pgsql-docs@postgresql.org"><LINK
REL="HOME"
TITLE="PostgreSQL 9.1.2 Documentation"
HREF="index.html"><LINK
REL="UP"
TITLE="Release Notes"
HREF="release.html"><LINK
REL="PREVIOUS"
TITLE="Release 8.3.5"
HREF="release-8-3-5.html"><LINK
REL="NEXT"
TITLE="Release 8.3.3"
HREF="release-8-3-3.html"><LINK
REL="STYLESHEET"
TYPE="text/css"
HREF="stylesheet.css"><META
HTTP-EQUIV="Content-Type"
CONTENT="text/html; charset=ISO-8859-1"><META
NAME="creation"
CONTENT="2011-12-01T22:07:59"></HEAD
><BODY
CLASS="SECT1"
><DIV
CLASS="NAVHEADER"
><TABLE
SUMMARY="Header navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TH
COLSPAN="5"
ALIGN="center"
VALIGN="bottom"
><A
HREF="index.html"
>PostgreSQL 9.1.2 Documentation</A
></TH
></TR
><TR
><TD
WIDTH="10%"
ALIGN="left"
VALIGN="top"
><A
TITLE="Release 8.3.5"
HREF="release-8-3-5.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="10%"
ALIGN="left"
VALIGN="top"
><A
HREF="release.html"
ACCESSKEY="U"
>Up</A
></TD
><TD
WIDTH="60%"
ALIGN="center"
VALIGN="bottom"
>Appendix E. Release Notes</TD
><TD
WIDTH="20%"
ALIGN="right"
VALIGN="top"
><A
TITLE="Release 8.3.3"
HREF="release-8-3-3.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
></TABLE
><HR
ALIGN="LEFT"
WIDTH="100%"></DIV
><DIV
CLASS="SECT1"
><H1
CLASS="SECT1"
><A
NAME="RELEASE-8-3-4"
>E.35. Release 8.3.4</A
></H1
><DIV
CLASS="NOTE"
><BLOCKQUOTE
CLASS="NOTE"
><P
><B
>Release Date: </B
>2008-09-22</P
></BLOCKQUOTE
></DIV
><P
>   This release contains a variety of fixes from 8.3.3.
   For information about new features in the 8.3 major release, see
   <A
HREF="release-8-3.html"
>Section E.39</A
>.
  </P
><DIV
CLASS="SECT2"
><H2
CLASS="SECT2"
><A
NAME="AEN114731"
>E.35.1. Migration to Version 8.3.4</A
></H2
><P
>    A dump/restore is not required for those running 8.3.X.
    However, if you are upgrading from a version earlier than 8.3.1,
    see the release notes for 8.3.1.
   </P
></DIV
><DIV
CLASS="SECT2"
><H2
CLASS="SECT2"
><A
NAME="AEN114734"
>E.35.2. Changes</A
></H2
><P
></P
><UL
><LI
><P
>      Fix bug in btree WAL recovery code (Heikki)
     </P
><P
>      Recovery failed if the WAL ended partway through a page split operation.
     </P
></LI
><LI
><P
>      Fix potential use of wrong cutoff XID for HOT page pruning (Alvaro)
     </P
><P
>      This error created a risk of corruption in system
      catalogs that are consulted by <TT
CLASS="COMMAND"
>VACUUM</TT
>: dead tuple versions
      might be removed too soon.  The impact of this on actual database
      operations would be minimal, since the system doesn't follow MVCC
      rules while examining catalogs, but it might result in transiently
      wrong output from <SPAN
CLASS="APPLICATION"
>pg_dump</SPAN
> or other client programs.
     </P
></LI
><LI
><P
>      Fix potential miscalculation of <TT
CLASS="STRUCTFIELD"
>datfrozenxid</TT
> (Alvaro)
     </P
><P
>      This error may explain some recent reports of failure to remove old
      <TT
CLASS="STRUCTNAME"
>pg_clog</TT
> data.
     </P
></LI
><LI
><P
>      Fix incorrect HOT updates after <TT
CLASS="STRUCTNAME"
>pg_class</TT
> is reindexed
      (Tom)
     </P
><P
>      Corruption of <TT
CLASS="STRUCTNAME"
>pg_class</TT
> could occur if <TT
CLASS="LITERAL"
>REINDEX
      TABLE pg_class</TT
> was followed in the same session by an <TT
CLASS="LITERAL"
>ALTER
      TABLE RENAME</TT
> or <TT
CLASS="LITERAL"
>ALTER TABLE SET SCHEMA</TT
> command.
     </P
></LI
><LI
><P
>      Fix missed <SPAN
CLASS="QUOTE"
>"combo cid"</SPAN
> case (Karl Schnaitter)
     </P
><P
>      This error made rows incorrectly invisible to a transaction in which they
      had been deleted by multiple subtransactions that all aborted.
     </P
></LI
><LI
><P
>      Prevent autovacuum from crashing if the table it's currently
      checking is deleted at just the wrong time (Alvaro)
     </P
></LI
><LI
><P
>      Widen local lock counters from 32 to 64 bits (Tom)
     </P
><P
>      This responds to reports that the counters could overflow in
      sufficiently long transactions, leading to unexpected <SPAN
CLASS="QUOTE"
>"lock is
      already held"</SPAN
> errors.
     </P
></LI
><LI
><P
>      Fix possible duplicate output of tuples during a GiST index scan (Teodor)
     </P
></LI
><LI
><P
>      Regenerate foreign key checking queries from scratch when either
      table is modified (Tom)
     </P
><P
>      Previously, 8.3 would attempt to replan the query, but would work from
      previously generated query text.  This led to failures if a
      table or column was renamed.
     </P
></LI
><LI
><P
>      Fix missed permissions checks when a view contains a simple
      <TT
CLASS="LITERAL"
>UNION ALL</TT
> construct (Heikki)
     </P
><P
>      Permissions for the referenced tables were checked properly, but not
      permissions for the view itself.
     </P
></LI
><LI
><P
>      Add checks in executor startup to ensure that the tuples produced by an
      <TT
CLASS="COMMAND"
>INSERT</TT
> or <TT
CLASS="COMMAND"
>UPDATE</TT
> will match the target table's
      current rowtype (Tom)
     </P
><P
>      This situation is believed to be impossible in 8.3, but it can happen in
      prior releases, so a check seems prudent.
     </P
></LI
><LI
><P
>      Fix possible repeated drops during <TT
CLASS="COMMAND"
>DROP OWNED</TT
> (Tom)
     </P
><P
>      This would typically result in strange errors such as <SPAN
CLASS="QUOTE"
>"cache
      lookup failed for relation NNN"</SPAN
>.
     </P
></LI
><LI
><P
>      Fix several memory leaks in XML operations (Kris Jurka, Tom)
     </P
></LI
><LI
><P
>      Fix <CODE
CLASS="FUNCTION"
>xmlserialize()</CODE
> to raise error properly for
      unacceptable target data type (Tom)
     </P
></LI
><LI
><P
>      Fix a couple of places that mis-handled multibyte characters in text
      search configuration file parsing (Tom)
     </P
><P
>      Certain characters occurring in configuration files would always cause
      <SPAN
CLASS="QUOTE"
>"invalid byte sequence for encoding"</SPAN
> failures.
     </P
></LI
><LI
><P
>      Provide file name and line number location for all errors reported
      in text search configuration files (Tom)
     </P
></LI
><LI
><P
>      Fix <TT
CLASS="LITERAL"
>AT TIME ZONE</TT
> to first try to interpret its timezone
      argument as a timezone abbreviation, and only try it as a full timezone
      name if that fails, rather than the other way around as formerly (Tom)
     </P
><P
>      The timestamp input functions have always resolved ambiguous zone names
      in this order.  Making <TT
CLASS="LITERAL"
>AT TIME ZONE</TT
> do so as well improves
      consistency, and fixes a compatibility bug introduced in 8.1:
      in ambiguous cases we now behave the same as 8.0 and before did,
      since in the older versions <TT
CLASS="LITERAL"
>AT TIME ZONE</TT
> accepted
      <SPAN
CLASS="emphasis"
><I
CLASS="EMPHASIS"
>only</I
></SPAN
> abbreviations.
     </P
></LI
><LI
><P
>      Fix datetime input functions to correctly detect integer overflow when
      running on a 64-bit platform (Tom)
     </P
></LI
><LI
><P
>      Prevent integer overflows during units conversion when displaying a
      configuration parameter that has units (Tom)
     </P
></LI
><LI
><P
>      Improve performance of writing very long log messages to syslog (Tom)
     </P
></LI
><LI
><P
>      Allow spaces in the suffix part of an LDAP URL in
      <TT
CLASS="FILENAME"
>pg_hba.conf</TT
> (Tom)
     </P
></LI
><LI
><P
>      Fix bug in backwards scanning of a cursor on a <TT
CLASS="LITERAL"
>SELECT DISTINCT
      ON</TT
> query (Tom)
     </P
></LI
><LI
><P
>      Fix planner bug that could improperly push down <TT
CLASS="LITERAL"
>IS NULL</TT
>
      tests below an outer join (Tom)
     </P
><P
>      This was triggered by occurrence of <TT
CLASS="LITERAL"
>IS NULL</TT
> tests for
      the same relation in all arms of an upper <TT
CLASS="LITERAL"
>OR</TT
> clause.
     </P
></LI
><LI
><P
>      Fix planner bug with nested sub-select expressions (Tom)
     </P
><P
>      If the outer sub-select has no direct dependency on the parent query,
      but the inner one does, the outer value might not get recalculated
      for new parent query rows.
     </P
></LI
><LI
><P
>      Fix planner to estimate that <TT
CLASS="LITERAL"
>GROUP BY</TT
> expressions yielding
      boolean results always result in two groups, regardless of the
      expressions' contents (Tom)
     </P
><P
>      This is very substantially more accurate than the regular <TT
CLASS="LITERAL"
>GROUP
      BY</TT
> estimate for certain boolean tests like <TT
CLASS="REPLACEABLE"
><I
>col</I
></TT
>
      <TT
CLASS="LITERAL"
>IS NULL</TT
>.
     </P
></LI
><LI
><P
>      Fix PL/pgSQL to not fail when a <TT
CLASS="LITERAL"
>FOR</TT
> loop's target variable
      is a record containing composite-type fields (Tom)
     </P
></LI
><LI
><P
>      Fix PL/Tcl to behave correctly with Tcl 8.5, and to be more careful
      about the encoding of data sent to or from Tcl (Tom)
     </P
></LI
><LI
><P
>      Improve performance of <CODE
CLASS="FUNCTION"
>PQescapeBytea()</CODE
> (Rudolf Leitgeb)
     </P
></LI
><LI
><P
>      On Windows, work around a Microsoft bug by preventing
      <SPAN
CLASS="APPLICATION"
>libpq</SPAN
> from trying to send more than 64kB per system call
      (Magnus)
     </P
></LI
><LI
><P
>      Fix <SPAN
CLASS="APPLICATION"
>ecpg</SPAN
> to handle variables properly in <TT
CLASS="COMMAND"
>SET</TT
>
      commands (Michael)
     </P
></LI
><LI
><P
>      Improve <SPAN
CLASS="APPLICATION"
>pg_dump</SPAN
> and <SPAN
CLASS="APPLICATION"
>pg_restore</SPAN
>'s
      error reporting after failure to send a SQL command (Tom)
     </P
></LI
><LI
><P
>      Fix <SPAN
CLASS="APPLICATION"
>pg_ctl</SPAN
> to properly preserve postmaster
      command-line arguments across a <TT
CLASS="LITERAL"
>restart</TT
> (Bruce)
     </P
></LI
><LI
><P
>      Fix erroneous WAL file cutoff point calculation in
      <SPAN
CLASS="APPLICATION"
>pg_standby</SPAN
> (Simon)
     </P
></LI
><LI
><P
>      Update time zone data files to <SPAN
CLASS="APPLICATION"
>tzdata</SPAN
> release 2008f (for
      DST law changes in Argentina, Bahamas, Brazil, Mauritius, Morocco,
      Pakistan, Palestine, and Paraguay)
     </P
></LI
></UL
></DIV
></DIV
><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
WIDTH="100%"><TABLE
SUMMARY="Footer navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
><A
HREF="release-8-3-5.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="index.html"
ACCESSKEY="H"
>Home</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
><A
HREF="release-8-3-3.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
>Release 8.3.5</TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="release.html"
ACCESSKEY="U"
>Up</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
>Release 8.3.3</TD
></TR
></TABLE
></DIV
></BODY
></HTML
>